Skip to content

Honor xsi:nil in any attribute position and xs:boolean form - #888

Merged
cowtowncoder merged 3 commits into
FasterXML:3.xfrom
Sahana2524:xsi-nil-any-position
Aug 2, 2026
Merged

Honor xsi:nil in any attribute position and xs:boolean form#888
cowtowncoder merged 3 commits into
FasterXML:3.xfrom
Sahana2524:xsi-nil-any-position

Conversation

@Sahana2524

Copy link
Copy Markdown
Contributor

xsi:nil is only recognized as an element's first attribute
_checkXsiAttributes inspects attribute 0 only, so <price currency="USD" xsi:nil="true"/> deserializes to a populated object while the same element with those two attributes swapped gives null, and in the first form the marker leaks through as a property named nil. Since attribute order carries no meaning in XML and xsi:nil is typed xs:boolean, the lookup now scans the whole attribute list and accepts the other true forms, with the marker itself still hidden wherever it sits.

@github-actions

Copy link
Copy Markdown

🧪 Code Coverage Report

Metric Coverage Change
Instructions coverage 73.69% 📈 +0.060%
Branches branches 68.49% 📈 +0.090%

Coverage data generated from JaCoCo test results

@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown

🧪 Code Coverage Report

Metric Coverage Change
Instructions coverage 73.71% 📈 +0.060%
Branches branches 68.56% 📈 +0.090%

Coverage data generated from JaCoCo test results

@cowtowncoder cowtowncoder added this to the 3.3.0 milestone Aug 2, 2026
@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown

🧪 Code Coverage Report

Metric Coverage Change
Instructions coverage 73.71% 📈 +0.060%
Branches branches 68.56% 📈 +0.090%

Coverage data generated from JaCoCo test results

@cowtowncoder
cowtowncoder merged commit d58ab73 into FasterXML:3.x Aug 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants